<?php
/**
 * 前台公共控制器
 * @author e5
 *
 */
class CommonController extends Controller{
	/**
	 * 定义__TEMPLATE__常量，用于载入css、js、图片等
	 */
	public function __init() {
		if (!defined('__TEMPLATE__')){
			define('__TEMPLATE__', __ROOT__.'/Template/'.C('INDEX_TPL_DEFAULT'));
		}
	}
	/**
	 * 前台载入模板公共方法
	 * @param string $tpl
	 */
	public function dis($tpl=null){
		if (is_null($tpl)) $tpl = 'index.html';
		$this->display('Template/'.C('INDEX_TPL_DEFAULT').'/'.$tpl);
	}
	/**
	 * 检查用户是否登陆
	 */
	public function checkLogin(){
		if (!session("uname") || !session("uid")){
			$this->error("请登陆");
		}
	}
	/**
	 * 获得所有父级分类
	 * @param array $data 所有分类数组
	 * @param int $cid 需要获得父级分类的分类id
	 * @return array 所有父级分类数组
	 */
	protected function getFatherCate($data,$cid) {
		$temp = array();
		foreach ($data as $v){
			if ($v['cid'] == $cid){
				$temp[] = $v;
				$temp = array_merge($temp,$this->getFatherCate($data, $v['pid']));
			}
		}
		return $temp;
	}
	/**
	 * 异步获得购物车数据
	 */
	public function getCartData() {
		if (!IS_AJAX) return;
		$data = Cart::getAllData();
		$str = "";
		$url = __ROOT__;
		foreach ($data['goods'] as $k=>$v){
			$v['total'] = number_format($v['total'],2);
			$str .= <<<str
			<li>
				<div class="carListLeft"><a href="#"><img src="{$url}/{$v['gpic']}" /></a></div>
				<div class="carListRight">
					<h3><a href="#">{$v['name']}</a></h3>
					<div class="priceArea"><strong>￥{$v['price']}</strong><em>X{$v['num']}</em></div>
				</div>
				<div class="carListDelect"><a href="javascript:;" sid="{$k}">删除</a></div>
			</li>
str;
		}
		$arr = array('goods'=>$str,'total_rows'=>$data['total_rows'],'total'=>number_format($data['total'],2));
		$this->ajax($arr);
	}
	/**
	 * 删除购物车中的商品
	 */
	public function del(){
		if (!IS_AJAX) return;
		$sid = Q("post.sid");
		if (Cart::del($sid)){
			echo 1;exit();
		}else {
			echo 0;exit();
		}
	}
}